Skip to content

diptest: add build-diptest.yml for riscv64 wheels - #1611

Merged
luhenry merged 2 commits into
mainfrom
diptest
Sep 8, 2026
Merged

diptest: add build-diptest.yml for riscv64 wheels#1611
luhenry merged 2 commits into
mainfrom
diptest

Conversation

@luhenry

@luhenry luhenry commented Sep 8, 2026

Copy link
Copy Markdown
Member

Compiles a single pybind11/C++ extension (_diptest_core), implementing Hartigan's dip test for unimodality. Upstream publishes no riscv64 wheel.

Mirrors upstream's wheels.yml (OpenMP enabled, arch flags disabled).

Differs from upstream

  • Stages LICENSE.pcg-cpp at the project root - the vendored pcg-cpp headers carry no licence file of their own.

Testing

  • same as upstream, plus asserting _has_openmp_support

License: Wheel bundles the image's libgomp (GPL-3.0, GCC Runtime Library Exception; sources published via the gpl_sources job) and pcg-cpp (Apache-2.0/MIT), whose licence text the build stages since diptest's own vendoring drops it.

Patches

  • 0001-ship-pcg-cpp-s-dual-Apache-2.0-MIT-LICENSE-in-the-wh.patch - Upstream-Status: To upstream. Without it the wheel ships pcg-cpp's compiled-in code with no licence attribution.

Built locally (macOS/arm64, OpenMP on); 15 passed.

Ports diptest 0.11.0 (Hartigan's dip test for unimodality) to riscv64.
scikit-build-core/CMake/pybind11 build; mirrors upstream's own
wheels.yml (OpenMP enabled, arch flags disabled) and vendors a
LICENSE.pcg-cpp patch since diptest's own vendoring of pcg-cpp drops
the dual Apache-2.0/MIT licence texts.
luhenry added a commit that referenced this pull request Sep 8, 2026
_diptest_core has no Py_mod_gil slot, so cp314t re-enables the GIL at
import and emits a RuntimeWarning; diptest's filterwarnings=error turns
that into a collection error on test_diptest.py, which cascades into a
KeyError on test_internal.py (gotcha 127). PYTHON_GIL=1 asks for the GIL
up front instead -- same runtime behaviour, no warning -- and is ignored
on the GIL builds.
luhenry added a commit that referenced this pull request Sep 8, 2026
@luhenry
luhenry merged commit 7082de3 into main Sep 8, 2026
10 checks passed
@luhenry
luhenry deleted the diptest branch September 8, 2026 14:57
@luhenry luhenry linked an issue Sep 8, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

diptest riscv64 support

1 participant